1. Field of the Invention
The present invention relates in general to the technical field of data processing for displaying information on electronic communication terminals. More specifically, the invention relates to a rendering technique for Web browsers (X)HTML or CSS user agents (UAs) that is required to render readable Web pages, with limited or no horizontal scrolling, on devices with limited resolution.
2. Prior Art
Most Web pages are designed with personal computers (PCs) in mind. Typically, the screen width on a PC is assumed to be at least 800 pixels. Smaller devices with smaller resolutions (screen sizes) therefore cannot render most such Web pages as designed without introducing horizontal scrolling.
There exist several different technologies for presenting Web documents (e.g (X)HTML) on smaller displays than those that the documents were originally written for.
For smart phones (devices able to read Web pages), Opera Software has introduced Small-Screen Rendering (SSR), ref. patent application PCT/NO03/00300. SSR reformats Web pages so they fit on small screens with much lower screen resolution than a Web page is designed for. Opera's small-screen technology adapts a Web document to a small screen by sometimes drastically changing the document's design as intended by its author. Colors, fonts, design, and style are changed; document content is moved, scaled down, or sometimes removed. SSR assumes a small screen and leaves large areas of a medium-sized screen unused.
SSR therefore works well on very small screens, for example mobile phones, but for medium-sized screens, for example PDAs, SSR is not a good solution.
Another technology for presenting Web documents on smaller displays is TV centric layout. This solution attempts to display a Web page on a television display without using horizontal scroll bars, while preserving the look and feel of the Web page as originally contemplated by the designer. A method is used where a first layout is received, with statistics for resolution, total width, and cell widths, and a second layout is then generated for display at a second resolution by comparing statistics from layout one with selected thresholds for layout two. The method then invokes horizontal shrinking (or growing) of cells in response to the comparison. If the second layout is not within the specified threshold, the process of cell reduction is repeated.
The present invention Medium-Screen Rendering (MSR) differs substantially from this approach in many ways. Most importantly, MSR is not an iterative process. MSR does not need to compare layouts before reduction, nor calculate the width of for example the largest element or embeds within a non-breaking line or cell.
Modern Web browsers must implement functions such as dynamic layout and the Document Object Model (DOM) to function properly on the Internet. An iterative approach to resizing elements (e.g. table cells) and producing page layouts may result in unacceptable performance, especially on devices with limited computing power.
Another solution is “Just Fit”. This method cannot properly handle box elements, positioned outside of the available horizontal space (viewing area). Nor has it solved the problem with a non-breaking line of elements that extends outside the viewing area; in such a case, “Just Fit” will introduce line breaks between non-breaking elements, which alters the intended layout. This may also disrupt for example the functionality of menus.
To zoom out the whole Web page is another method to avoid horizontal scrolling, with the risk of making some of or the entire page unreadable.
Zooming an entire Web page out, but increasing the relative font size as the page is zoomed out, ensures that fonts are readable as the actual minimum font does not go below a set value even though other content is zoomed out. The drawback with this method is that the page quickly loses its original look and feel because the relation between text and other content will be distorted.
U.S. Pat. No. 6,593,944 with the title “Displaying a web page on an electronic display device having a limited display area” is an example of yet another approach aiming to solve the problems involved with the other zoom solutions. In this approach the entire page is zoomed out to fit the screen and presented to a user that selects the part of the page to be zoomed in for reading. The drawback of this method is that a user must move a pointing device (e.g. a mouse) around to read different parts of the page.
The aforementioned methods are all performed on the client-side (e.g. by a Web browser).
There also exist proxy or local software content transformations. A proxy solution is a server-side solution that alters Web content before it is served to the user agent electronic device. Drawbacks with this method are that it slows down surfing and users must in some way subscribe to the service. Further, the service provider must purchase a software solution, and the quality of the solution is not necessarily better than client-side solutions.
Local software content transformations is a client-side solution that resembles a server-side solution in that a transformation is performed before content is served to the UA, but it is done on the client. This requires installing additional software on the device. It will also require more system resources (e.g. memory and CPU), which may slow down surfing.
The present invention uses a new approach for presenting Web pages (e.g. HTML or XHTML) on medium-sized screens. The main object is to present a scaled down version of the original Web page on a medium-sized display, while maintaining the look and feel of the original Web page. The solution developed is called Medium-Screen Rendering (MSR).
MSR can be used on devices of all kinds that share among these aspects:                Device renders markup language (e.g. HTML, XHTML, XML, WML, cHTML, HTMLP etc.);        Markup can be styled, for example using Cascading Style Sheets (CSS);        Media output (e.g. viewing area) ranges between approximately 300 and 800 pixels in width, or is smaller than the media output for which the markup was initially designed.        Horizontal scrolling is impossible or not desired.        
In the present invention, the necessary changes to Web pages are done by a Web browser embodied on a client and not by a proxy server or client-side content-transformation software before serving the Web page to the client.
The invention can typically be used on, but is not limited to, TVs, PDAs, PCs or smart phones with medium-sized screens, or even printers.
OBJECTS AND SUMMARY OF THE INVENTION
The object of the present invention is to render markup documents within the limits of resolutions smaller than the resolutions for which documents were originally designed, in most cases without introducing horizontal scrolling.
The object is achieved by redefining elements in the document while keeping the original fonts, colors, design, and style. The invention finds content that takes up too much horizontal space and squeezes horizontally or shrinks these page elements (boxes) individually. Original fonts and colors are kept, and the design and style is left virtually untouched. In this process, very little of the design and style (e.g. CSS rules) is changed. The method may, if necessary, attempt to move document content (boxes) to avoid unused (empty) screen space.
The end result is a presentation of the markup document that is very close to the original design, but that fits on a medium-sized resolution (e.g. a screen).
The above objects are achieved by means of a method, a client terminal, and a computer program as set forth in the appended set of claims.
DETAILED DESCRIPTION OF THE INVENTION